﻿using Bricks.Component.Utils;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.ComponentModel.DataAnnotations;
using System.Linq;
using System.Text;

namespace Bricks.Business.Models.ProjectContract
{
    [Description("标段")]
    public class ContractInfo : EntityBase<Guid>
    {
        public ContractInfo()
        {
            ID = GuidHelper.NewGuid();
        }

        [Display(Name = "项目ID")]
        public Guid PID { get; set; }

        [StringLength(255)]
        [Display(Name = "合同单位名称")]
        public string ContractUnitName { get; set; }

        [StringLength(255)]
        [Display(Name = "标段编号")]
        public string ContractCode { get; set; }

        [StringLength(255)]
        [Display(Name = "标段名称")]
        public string ContractName { get; set; }

        [Display(Name = "标段类型")]
        public string ContractType { get; set; }

        [Display(Name = "开始桩号")]
        public string StartStake { get; set; }

        [Display(Name = "结束桩号")]
        public string EndStake { get; set; }

        [Display(Name = "计划开工日期")]
        public DateTime? ScheduledStartDate { get; set; }

        [Display(Name = "计划完工日期")]
        public DateTime? ScheduledEndDate { get; set; }

        [Display(Name = "项目总工期")]
        public int? ProjectPeriod { get; set; }

        [Display(Name = "标段金额")]
        public double? ContractMoney { get; set; }

        [Display(Name = "变更后金额")]
        public double? AfterAlterMoney { get; set; }

        [Display(Name = "累计计量金额")]
        public double? AccumulativeEstimateMoney { get; set; }

        [Display(Name = "累计计量比例")]
        public string AccumulativeEstimateProportion { get; set; }

        [Display(Name = "对应单位")]
        public Guid CorrespondenceUnit { get; set; }

        [Display(Name = "合同内容简介")]
        public string ContractContent { get; set; }

        [Display(Name = "其他附件")]
        public string Attachment { get; set; }

        [Display(Name = "排序")]
        public int? OrderNo { get; set; }
    }
}
